encoding/json/jsontext.Encoder.s (field)
55 uses
encoding/json/jsontext (current package)
encode.go#L49: s encoderState
encode.go#L107: case e.s.Flags.Get(jsonflags.WithinArshalCall):
encode.go#L111: b := e.s.Buf[:0]
encode.go#L112: if _, ok := e.s.wr.(*bytes.Buffer); ok {
encode.go#L115: e.s.reset(b, w, opts...)
encode.go#L141: return &e.s.Struct
encode.go#L345: return e.s.WriteToken(t)
encode.go#L525: return e.s.WriteValue(v)
encode.go#L901: return e.s.previousOffsetEnd()
encode.go#L926: n := 1 << bits.Len(uint(e.s.maxValue|63)) // fast approximation for max length
encode.go#L927: if cap(e.s.availBuffer) < n {
encode.go#L928: e.s.availBuffer = make([]byte, 0, n)
encode.go#L930: return e.s.availBuffer
encode.go#L958: return e.s.Tokens.Depth() - 1
encode.go#L975: switch s := e.s.Tokens.index(i); {
encode.go#L987: return Pointer(e.s.AppendStackPointer(nil, -1))
export.go#L55: func (export) Encoder(e *Encoder) *encoderState { return &e.s }
pools.go#L46: if e.s.Buf == nil {
pools.go#L50: n := 1 << bits.Len(uint(e.s.bufStats.prevLen|63))
pools.go#L51: e.s.Buf = make([]byte, 0, n)
pools.go#L53: e.s.reset(e.s.Buf[:0], nil, opts...)
pools.go#L57: if cap(e.s.availBuffer) > 64<<10 {
pools.go#L58: e.s.availBuffer = nil // avoid pinning arbitrarily large amounts of memory
pools.go#L76: case cap(e.s.Buf) <= 4<<10: // always recycle buffers smaller than 4KiB
pools.go#L77: e.s.bufStats.strikes = 0
pools.go#L78: case cap(e.s.Buf)/4 <= len(e.s.Buf): // at least 25% utilization
pools.go#L79: e.s.bufStats.strikes = 0
pools.go#L80: case e.s.bufStats.strikes < 4: // at most 4 strikes
pools.go#L81: e.s.bufStats.strikes++
pools.go#L83: e.s.bufStats.strikes = 0
pools.go#L84: e.s.bufStats.prevLen = len(e.s.Buf) // heuristic for size to allocate next time
pools.go#L85: e.s.Buf = nil
pools.go#L93: e.s.reset(nil, w, opts...) // buffer taken from bytes.Buffer
pools.go#L97: e.s.reset(e.s.Buf[:0], w, opts...) // preserve existing buffer
pools.go#L102: if cap(e.s.availBuffer) > 64<<10 {
pools.go#L103: e.s.availBuffer = nil // avoid pinning arbitrarily large amounts of memory
pools.go#L105: if _, ok := e.s.wr.(*bytes.Buffer); ok {
pools.go#L106: e.s.wr, e.s.Buf = nil, nil // avoid pinning the provided bytes.Buffer
pools.go#L109: e.s.wr = nil // avoid pinning the provided io.Writer
pools.go#L110: if cap(e.s.Buf) > 64<<10 {
pools.go#L111: e.s.Buf = nil // avoid pinning arbitrarily large amounts of memory
value.go#L48: e.s.Flags.Set(jsonflags.OmitTopLevelNewline | 1)
value.go#L49: if err := e.s.WriteValue(Value(src)); err != nil {
value.go#L52: return append(dst, e.s.Buf...), nil
value.go#L140: e.s.Join(opts2...)
value.go#L141: e.s.Flags.Set(jsonflags.OmitTopLevelNewline | 1)
value.go#L142: if err := e.s.WriteValue(*v); err != nil {
value.go#L145: if !bytes.Equal(*v, e.s.Buf) {
value.go#L146: *v = append((*v)[:0], e.s.Buf...)
value.go#L310: mustReorderObjectsFromDecoder(d, &e2.s.Buf) // per RFC 8785, section 3.2.3